package com.cskaoyan.javase.oop1._16access._2member;

/**
 * 类中结构(成员以及构造器)的访问级别:
 *      四种皆可用
 * 更宽松的访问级别,总是包含更严格的
 *
 * 注意事项:
 *      1.要想访问类中结构,首先需要类的权限
 *      2.私有权限的成员,只要是在同类下,可以任意被访问
 *          不管这个私有成员是哪里来的.
 *
 *
 * @since 10:46
 * @author wuguidong@cskaoyan.onaliyun.com
 */
public class A {
    private int num;
    int num2;
    public int num3;

    public void test() {
        System.out.println(num);
    }

    public void test(A a) {
        // a这个引用可不可以访问num?
        /*
            只要是在A类中
            都可以访问A类下的私有成员
         */
        System.out.println(a.num);
    }
}

class B {
    public void test() {
        A a = new A();
        // 'num' has private access in 'com.cskaoyan.javase.oop1._16access._2member.A'. ';' expected.
        // a.num
        System.out.println(a.num2);
    }
}